package com.ktgj.common.core.enums;

import org.apache.xmlbeans.impl.xb.xsdschema.Public;

/**
 * 酒店枚举
 * */
public class HotelEnum {
    public enum RegionalLocation{
        /**
         * 酒店区域位置类型
         * */
        administrativeDistrict("administrativeDistrict"), //行政区
        businessDistrict("businessDistrict"), //商圈
        subwayStation("subwayStation"), //地铁站
        airportStation("airportStation"), //机场车站
        popularArea("popularArea"), //热门区域
        hospital("hospital"), //医院
        distance("distance"), //距离

        /**
         * 酒店支付类型
         * */
        All("All"), //不限
        SelfPay("SelfPay"), //现付
        Prepay("Prepay"), //预付
        Guarantee("Guarantee"), //担保

        /**
         * 酒店筛选类型
         * */
        serviceFacilities("serviceFacilities"), //服务设施
        reviews("reviews"), //点评
        hotelType("hotelType"), //酒店类型
        featuredTopics("featuredTopics"), //特色主题
        roomTypeBreakfast("roomTypeBreakfast"), //房型早餐

        roomType("roomType"), //房型
        breakfast("breakfast"), //早餐
        score("score"), //评分
        commentsNum("commentsNum"), //评论数量

        /**
         * 酒店区域位置类型
         * */
        Restaurant("餐厅"), //餐厅
        RecreationFacilities("休闲"), //休闲
        Meeting("会议室"), //会议室
        Exterior("外观"), //外观
        GuestRoom("客房"), //客房
        LobbyReception("大厅"), //大厅
        OtherFacilities("其他"), //其他
        PublicArea("公共区域"), //公共区域
        NearbyAttractions("周边景点"), //周边景点

        /**
         * 酒店房型筛选
         * */
        /** 床型 */
        BigBed("bigBed"), //大床
        DoubleBed("doubleBed"), //双床

        /** 早餐 */
        BreakfastIncluded("breakfastIncluded"), //含早餐
        SingleBreakfast("singleBreakfast"), //单人早餐
        BreakfastForTwo("breakfastForTwo"), //双人早餐
        Above("above"), //含三早及以上
        WithoutBreakfast("withoutBreakfast"), //不含早

        /** 服务 */
        SpecialTicketAvailable("specialTicketAvailable"), //可开专票
        FreeCancellation("freeCancellation"), //免费取消
        ConfirmNow("confirmNow"), //立刻确认
        ELongDirectSales("eLongDirectSales"), //同程艺龙直销
        HotelPackage("hotelPackage"), //酒店套餐

        /** 支付 */
        LiveNowPayLater("liveNowPayLater"), //先住后付
        PayOnline("payOnline"), //在线付
        PayAtTheStore("payAtTheStore"), //到店付

        /** 优惠 */
        CashBack("cashBack"), //有返现
        AvailableRedPackets("availableRedPackets"), //可用红包
        AvailableCoupons("availableCoupons"), //可用券
        MileageRedemption("mileageRedemption"), //里程兑换
        StoreNewCustomers("storeNewCustomers"), //门店新客
        BusinessSpecial("businessSpecial"), //商务特惠

        /**
         * 变更规则
         * */
        PrepayNoChange("PrepayNoChange"), //不允许变更取消
        PrepayNeedSomeDay("PrepayNeedSomeDay"), //在到店当日24点前Hour小时前按规则看是否可以免费变更取消
        PrepayNeedOneTime("PrepayNeedOneTime"), //在约定日期时间点(DateNum + Time)前可以免费变更取消

        /**
         * 支付类型
         * */
        OnlinePayment("在线付"), //在线付

        /**
         * 站点
         * */
        PopularSearches("热门搜索"), //热门搜索
        PopularHotels("热门酒店"), //热门酒店
        BusinessDistrict("商圈"), //商圈
        AirportStation("机场车站"), //机场车站
        Hospital("医院"), //医院
        Attractions("景点"), //景点
        University("大学"), //大学
        SubwayStation("地铁站"), //地铁站
        HotelBrand("酒店品牌"), //酒店品牌

        /**
         * 后台酒店房型列表条件
         * */
        Breakfast("breakfast"), //含早餐
        Confirm("confirm"), //立即确认
        KingBedRoom("kingBedRoom"), //大床房
        DoubleBedRoom("doubleBedRoom"), //双床房
        Cancel("cancel"), //免费取消
        AvailableToOrder("availableToOrder"), //可订
        Prepaid("prepaid"), //在线付款
        Collect("collect"), //到店付款
        FreeWIFIInternet("freeWIFIInternet"), //免费WI-FI上网
        FreeWiredBroadband("freeWiredBroadband"), //免费有线宽带

        /**
         * 酒店供应商
         * */
        ELong("Elong"), //艺龙
        Manage("Manage"),//自营

        /**
         * 订单退款状态
         * */
        CancelSuccess("cancelSuccess"),//取消成功
        cancellationFailed("cancellationFailed"),//取消失败
        ;
         /**
         * 艺龙
         * */
         public enum ElongOrderType{
             没有获取(0l),
             担保失败(1l),
             等待担保(2l),
             等待确认(4l),
             等待支付(8l),
             等待核实入住(16l),
             酒店拒绝订单(32l),
             未入住(64l),
             已经离店(128l),
             已经取消(256l),
             已经确认(512l),
             已经入住(1024l),
             正在担保(2048l),
             正在支付(4096l),
             支付失败(8192l)
             ;
             private Long value;

             ElongOrderType(Long value) {
                 this.value = value;
             }

             public Long getValue() {
                 return value;
             }

             public void setValue(Long value) {
                 this.value = value;
             }
         }



        RegionalLocation(String value) {
            this.value = value;
        }

        private String value;

        public String getValue() {
            return value;
        }
    }
}
